DeepLearningKit - an GPU Optimized Deep Learning Framework for Apple's iOS, OS X and tvOS developed in Metal and Swift

نویسندگان

  • Amund Tveit
  • Torbjørn Morland
  • Thomas Brox Røst
چکیده

In this paper we present DeepLearningKit an open source framework that supports using pretrained deep learning models (convolutional neural networks) for iOS, OS X and tvOS. DeepLearningKit is developed in Metal in order to utilize the GPU efficiently and Swift for integration with applications, e.g. iOS-based mobile apps on iPhone/iPad, tvOS-based apps for the big screen, or OS X desktop applications. The goal is to support using deep learning models trained with popular frameworks such as Caffe, Torch, TensorFlow, Theano, Pylearn, Deeplearning4J and Mocha. Given the massive GPU resources and time required to train Deep Learning models we suggest an App Store like model to distribute and download pretrained and reusable Deep Learning models. 1 GPU Accelerated Deep Learning Library The Metal programming language is most the efficient way of utilizing the GPU on Apple’s iOS since 2014 [1, 2, 3, 4] and OSX since 2015 [5, 6, 7]. This paper gives a brief overview of a Metal and Swift based Deep Learning library named DeepLearningKit, in particular parts of Metal convolutional neural network operators for the GPU. DeepLearningKit supports on-device Deep Learning on Apple’s iOS, OS X and tvOS. DeepLearningKit currently has shader functions for convolutional neural networks implemented in Metal and parallelized for the GPU, operators include: convolution, pooling, rectifier layer and softmax. In terms of deep learning model supported it has support for Min Lin’s Caffe-trained Network In Network[8] (NIN trained on CIFAR-10, CIFAR-100 and ImageNet data sets). We also have preliminary support running Theano[9] trained LeNet (trained on MNIST digit classification dataset). The reason we have chosen NIN is that the network is small compared to other deep convolutional neural networks, but at the same time provide very high classification accuracy on images, e.g. better than AlexNet. GoogleLeNet (winner of Imagenet 2014) uses a similar approach as NIN[?]. NIN can perhaps also be used in non-image domains, e.g speech recognition[10] or natural language processing[11]. In particular one could attempt to adapt Zhang and Lecun’s encoding and 1D convolutional operators in “Text Understanding from Scratch”[12] and use it with NIN. 1.1 Experiences with PowerVR G6430/GT7600 on iPhone 5S/6S The performance of DeepLearningKit Deep Learning going from iPhone 5S (with PowerVR G6430 according to The iPhone 5S Review (AnandTech)) to iPhone 6S (with PowerVR GT7600 according to Apple iPhone 6S Plus vs. Samsung Galaxy S6 Edge+) we got 1 order of magnitude in improved performance. Calculation time to run through a 20 layer deep convolutional neural network model ∗http://DeepLearningKit.org 1 ar X iv :1 60 5. 04 61 4v 1 [ cs .L G ] 1 5 M ay 2 01 6

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

DLVM: A modern compiler framework for neural network DSLs

Deep learning software demands reliability and performance. We present DLVM, a design and implementation of a compiler infrastructure with a linear algebra intermediate representation, algorithmic differentiation by adjoint code generation, domain-specific optimizations and a code generator targeting GPU via LLVM. Designed as a modern compiler framework inspired by LLVM, DLVM is more modular an...

متن کامل

Learning iOS Programming - From Xcode to App Store: Covers iOS 5, 2nd Edition

learning ios programming from xcode to app store learning ios programming from xcode to app store tbkv download learning ios programming from xcode to app store kindle learning iphone programming xcode app store learning ios programming from xcode to app store free download learning ios programming: from xcode to app click here to access this book : free download http://www learn xcode ios prog...

متن کامل

A Hybrid Optimization Algorithm for Learning Deep Models

Deep learning is one of the subsets of machine learning that is widely used in Artificial Intelligence (AI) field such as natural language processing and machine vision. The learning algorithms require optimization in multiple aspects. Generally, model-based inferences need to solve an optimized problem. In deep learning, the most important problem that can be solved by optimization is neural n...

متن کامل

A Hybrid Optimization Algorithm for Learning Deep Models

Deep learning is one of the subsets of machine learning that is widely used in Artificial Intelligence (AI) field such as natural language processing and machine vision. The learning algorithms require optimization in multiple aspects. Generally, model-based inferences need to solve an optimized problem. In deep learning, the most important problem that can be solved by optimization is neural n...

متن کامل

Numerical Simulation of a Lead-Acid Battery Discharge Process using a Developed Framework on Graphic Processing Units

In the present work, a framework is developed for implementation of finite difference schemes on Graphic Processing Units (GPU). The framework is developed using the CUDA language and C++ template meta-programming techniques. The framework is also applicable for other numerical methods which can be represented similar to finite difference schemes such as finite volume methods on structured grid...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:
  • CoRR

دوره abs/1605.04614  شماره 

صفحات  -

تاریخ انتشار 2016